package com.ahora.org.ejb.facade.interfaces;

import java.util.List;

import javax.ejb.Local;

import com.ahora.org.ejb.jpa.beans.BandejaDTO;
import com.ahora.org.ejb.jpa.beans.DocumentoInternoDTO;
import com.ahora.org.ejb.jpa.beans.TipoDocumentoInternoDTO;
import com.ahora.org.ejb.jpa.entities.Accion;
import com.ahora.org.ejb.jpa.entities.DocumentoUsuario;
import com.ahora.org.ejb.jpa.entities.TipoDocumentosInternos;
import com.ahora.org.ejb.jpa.entities.Usuario;

@Local
public interface DocumentoInternoFacade {
	public abstract List<DocumentoInternoDTO> listaDocumentoInternoUsuarioExpediente(
			BandejaDTO bandejaDTO) ;
	public abstract List<DocumentoUsuario> listaDocumentoInternoAdjuntodos(
			BandejaDTO ob);
	public abstract List<DocumentoUsuario> listaDocumentoInternoAdjuntodos();
	public abstract List<TipoDocumentosInternos> listarDocumentosInternos();
	public abstract List<Usuario> listarUsuario(int cod) throws Exception ;
	public abstract String ultimate(int idUser);
	public abstract  List<Usuario> listarTodosUsuarios();
	public abstract List<DocumentoInternoDTO> listaDocumentoInternoUsuario(
			Usuario objUsu);
	public abstract String updateDocumento(TipoDocumentosInternos objTipoDoc, Usuario userLog);
	public abstract boolean primeravalidacion(String codigo);
	public abstract String insertarUsuario(TipoDocumentosInternos documento, Usuario userLog) ;
	public abstract String deleteDocumento(int idDocumento, Usuario userLog);
	public abstract TipoDocumentosInternos buscarDocumentoUnique(int idDocumento);
	public abstract String enviarDocumentoInterno(int codTipDocIntWeb, DocumentoUsuario objDU,
			Usuario userLog, List<Usuario> userRec, List<Usuario> listconCopia,
			Integer codExpediente, DocumentoInternoDTO docInter);
	public abstract String obtenerCodigoTipoDocumento(DocumentoInternoDTO docInter);
	public abstract List<TipoDocumentoInternoDTO> listarDocumentosInternosMantenimiento();
	public abstract  String registrarDocumentoInterno(BandejaDTO bandejaDTO, DocumentoInternoDTO docInter,
			Usuario userLog, Accion accion);
	public abstract List<DocumentoInternoDTO> listaDocumentosUsuarioCreados(Usuario usuario);
	public abstract List<DocumentoInternoDTO> listaDocumentosUsuarioBandeja(Usuario usuario);
}
